package com.zhilifang.modules.zlf.utils;


import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import org.springframework.beans.factory.annotation.Autowired;
 
import java.io.*;
import java.util.Map;


/**
 * 获取模板生成静态html页面类
 * @author Timeto部门
 *
 */
public class StaticServiceImpl {
	
	
    @Autowired
    private static Configuration configuration;
 
    /**
     * 生成首页静态页面
     * 生成html名称、调用模板名称、生成html存放目录、存放数据
     * 
     */
    public static void createIndexHtml(String fileName, String ftlName, String filepath,Map<String, Object> map) {
        try {
            File folder = new File(filepath);
            //如果文件夹不存在
            if (!folder.exists()) {
                folder.mkdir();
            }
            File indexHtml = new File(folder, fileName);
            //如果html文件不存在
            if (!indexHtml.exists()) {
                indexHtml.createNewFile();
            }
            Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(indexHtml),"UTF-8"));
            /**获取输出目标文件输出流------结束*/
 
            //获取数据
            map.put("users", map);
 
            //获取模板
            Template template = configuration.getTemplate(ftlName);
 
            //把数据和输出文件信息交给模板得到静态html文件
            template.process(map,out);
 
            out.flush();
            out.close();}
        catch (IOException e) {
            e.printStackTrace();
        } catch (TemplateException e) {
            e.printStackTrace();
        }
    }
}
